In traditional personal computer (PC) tasks, such as word processing, a quick response is valuable but not critical. Furthermore, the data produced is maintained on the hard disk of the PC, within the enclosed PC system.
However, some PC applications, such as facsimile, modem, audio, and video, require interfacing with the external world. This interface usually involves translation of external analog signals to/from a digital signal which the PC can process. The interface also requires a "real time response", such as processing of a certain amount of data within a given amount of time (e.g.: input of a video 30 frames per second requires processing a frame every 33 msec).
The current state of the art solutions for the above real-time applications employ dedicated processors, known as "Digital Signal Processors" (DSP), which are provided on add-in cards ("PC boards"). These processors are specifically adapted to the above real time tasks. They are also dedicated to a specific task, and are not used for any other purpose.
The host processor (or CPU), mainly an x86 processor manufactured by Intel Corporation of the USA, are the heart of the PC. Until recently, however, they did not possess enough power to execute real time, DSP tasks. New CPU's, such as the PENTIUM, also manufactured by Intel, have enough processing power to deal with such tasks.
Progress in the PC platform has been made not only with the processing power of the CPU. The dominant operating systems in PCs today is Windows 3.1. This operating system cannot handle several processing tasks simultaneously. New operating systems, such as Win 95, from Microsoft, and OS/2, manufactured by IBM of the U.S.A., will be capable of handling multiple tasks.
The progress which was and is still being made in the PC platform will enable a new technique of processing real time tasks on the host PC operating system (as opposed to on the add-in PC boards) to control the real time tasks. This is known as "Native" or "Host" Signal Processing. As mentioned in the article, "Intel Beats NSP Drum", by Martin Gold, CMP Publications Inc. 1995, real time kernels (such as SPOX of Spectron Microsystems Inc. of California, U.S.A.) can be employed under the host PC operating system to control the real time tasks. Such kernels allow creating and deleting DSP tasks, assigning priority to them and assigning events caused by the presence of the task. It does not provide a decision mechanism as to when to activate and how to operate such real-time tasks.
However, personal computers also have to perform user-oriented non-real-time tasks, such as word processing and spreadsheet calculations, within a reasonable amount of time, while performing at least one real-time task. The multiple tasks which can be operating (the real-time ones and the non-real-time ones) have to be coordinated and the processing power of the host CPU has to be spread among the many tasks. Furthermore, the load is not consistent; at times, the load on the host CPU is very great and at other times, it is light, 6 depending on the activity of the real-time tasks and of the user vis-a-vis the non-real-time tasks. It is possible that, at times, the host CPU will be unable to simultaneously perform all of the jobs requested of it or the performance of the traditional tasks will degrade significantly in the presence of the simultaneously operating real-time tasks.